﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using XbsWebAPI.EntityFrameworkCore.Entities.Enums;

namespace XbsWebAPI.Application.CampRoom.Dtos
{
    /// <summary>
    /// 获取房型基本信息
    /// </summary>
    public class GetHouseTypeBasicDto
    {
        #region 设置房型基本信息

        public Guid Id { get; set; }

        /// <summary>
        /// 房型名称
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 选中的营位（如果为null即没有选择）
        /// </summary>
        public SelectCampDto Camp { get; set; }

        /// <summary>
        /// 营位下拉框列表集合
        /// </summary>
        public Dictionary<Guid, string> CampItems { get; set; }

        /// <summary>
        /// 房间面积
        /// </summary>
        public double RoomArea { get; set; }

        /// <summary>
        /// 可入住人数
        /// </summary>
        public int GuestNumber { get; set; }

        /// <summary>
        /// 床型
        /// </summary>
        public BedType BedType { get; set; }

        /// <summary>
        /// 床型尺寸
        /// </summary>
        public string BedSize { get; set; }

        /// <summary>
        /// 是否有窗
        /// </summary>
        public bool HasWindow { get; set; }

        /// <summary>
        /// 早餐份数
        /// </summary>
        public int BreakfastCount { get; set; }

        /// <summary>
        /// 订房须知
        /// </summary>
        [Required]
        public string Description { get; set; }


        /// <summary>
        /// 房型图片列表
        /// </summary>
        //public virtual ICollection<HouseTypePictureDto> HouseTypePictures { get; set; }
        public List<string> Files { get; set; }

        /// <summary>
        /// 配套设施
        /// </summary>
        public List<Supporting> Supportings { get; set; } = new List<Supporting>();

        #endregion


    }

    public class Supporting
    {
        public Guid SupportingFacilityId { get; set; }

        public string Name { get; set; }
    }
}
